package com.wx.test;


import com.wx.rpc.service.core.IRegisterService;
import com.wx.rpc.service.core.RPCServer;
import com.wx.rpc.service.core.ZkRegisterService;

/**
 * @author wx
 * @Description: 测试_服务方
 * 服务器方的思路
 * 1.首先创建出注册中心
 * 2.创建RPC服务器,并设置注册中心与服务器地址进来
 * 3.绑定服务，把需要绑定的服务设计进去，通过服务全限类名与服务对象存储进map
 * 4.发布并注册服务，获取绑定服务的map，在调用注册服务的方法，把map里面key注册进zk中->服务器地址做为map里面key的子节点，注册完之后，在启动当前服务，监听客户端发送的请求（服务方定义好的请求体），并异步执行请求方法
 *
 * @date 2019/3/8 000816:38
 */
public class Main_1 {
    public static void main(String[] agrs){
        ISelfHelloService helloService = new SelfHelloService();
        IRegisterService zkRegisterService = new ZkRegisterService();
        // 初始化注册中心和服务端口信息
        RPCServer server = new RPCServer(zkRegisterService, "127.0.0.1:8081");
        // 绑定服务
        server.bind(helloService);
        // 发布并注册服务
        server.publishServer();
        System.out.println("服务发布成功");

    }
}
